package com.cty._01_Base._03_01_DuplicationInArray;

/**
 * @Auther: cty
 * @Date: 2020/6/27 17:41
 * @Description: 测试 Duplicate
 * @version: 1.0
 */
public class DuplicationInArrayApp {
    public static void main(String[] args) {
        // 一 输入 & 测试用例
        // 1 数组为null
        int[] array01 = null;  // output：空指针或数组长度为0
        // 2 数组长度为0
        int[] array02 = {};  // output：空指针或数组长度为0
        // 3 数组中包含不在0~n-1范围内的数字
        int[] array03 = {2, 3, -1, 0, 2, 5, 3};  // output：数组中包含不在0~n-1范围内的数字
        // 4 数组中不包含重复数字
        int[] array04 = {2, 1, 4, 0, 6, 5, 3};  // output：数组中不包含重复数字
        // 5 数组中包含一个重复数字
        int[] array05 = {6, 3, 1, 0, 2, 5, 3};  // output：数组中的一个重复数字为 3
        // 6 数组中包含多个重复数字
        int[] array06 = {2, 3, 1, 0, 2, 5, 3};  // output：数组中的一个重复数字为 2

        // 二 执行
    //        int duplicate = getDuplicate(array01, 1);
        int duplicate = DuplicationInArray.getDuplicate(array06, array06.length);

        // 三 输出
        switch (duplicate){
            case -1:
                System.out.println("空指针或数组长度为0");
                break;
            case -2:
                System.out.println("数组中包含不在0~n-1范围内的数字");
                break;
            case -3:
                System.out.println("数组中不包含重复数字");
                break;
            default:
                System.out.println("数组中的一个重复数字为 " + duplicate);
        }
    }  // end main()
}  // end class
